return AuthenticationResponse::newAbstain();
}
- $dbr = wfGetDB( DB_SLAVE );
+ $dbr = wfGetDB( DB_REPLICA );
$row = $dbr->selectRow(
'user',
[
}
$status = $this->checkPasswordValidity( $username, $req->password );
- if ( !$status->isOk() ) {
+ if ( !$status->isOK() ) {
// Fatal, can't log in
return AuthenticationResponse::newFail( $status->getMessage() );
}
return $this->failResponse( $req );
}
+ // Add an extra log entry since a temporary password is
+ // an unusual way to log in, so its important to keep track
+ // of in case of abuse.
+ $this->logger->info( "{user} successfully logged in using temp password",
+ [
+ 'user' => $username,
+ 'requestIP' => $this->manager->getRequest()->getIP()
+ ]
+ );
+
$this->setPasswordResetFlag( $username, $status );
return AuthenticationResponse::newPass( $username );
return false;
}
- $dbr = wfGetDB( DB_SLAVE );
+ $dbr = wfGetDB( DB_REPLICA );
$row = $dbr->selectRow(
'user',
[ 'user_newpassword', 'user_newpass_time' ],
if ( $sendMail ) {
// Send email after DB commit
- $dbw->onTransactionIdle( function () use ( $req ) {
- /** @var TemporaryPasswordAuthenticationRequest $req */
- $this->sendPasswordResetEmail( $req );
- } );
+ $dbw->onTransactionIdle(
+ function () use ( $req ) {
+ /** @var TemporaryPasswordAuthenticationRequest $req */
+ $this->sendPasswordResetEmail( $req );
+ },
+ __METHOD__
+ );
}
}
if ( $mailpassword ) {
// Send email after DB commit
- wfGetDB( DB_MASTER )->onTransactionIdle( function () use ( $user, $creator, $req ) {
- $this->sendNewAccountEmail( $user, $creator, $req->password );
- } );
+ wfGetDB( DB_MASTER )->onTransactionIdle(
+ function () use ( $user, $creator, $req ) {
+ $this->sendNewAccountEmail( $user, $creator, $req->password );
+ },
+ __METHOD__
+ );
}
return $mailpassword ? 'byemail' : null;